home *** CD-ROM | disk | FTP | other *** search
/ Chip 1996 April / CHIP 1996 aprilis (CD06).zip / CHIP_CD06.ISO / hypertxt.arj / 9302 / SZIMU4.CD < prev    next >
Text File  |  1995-04-18  |  17KB  |  334 lines

  1.           @VNövekedés, de meddig?@N
  2.           
  3.           @VSzimuláció -- 4. rész@N
  4.           
  5.           Sorozatunk   elôzô   részeiben   egy   egyszerû  demográfiai
  6.           modellbôl   kiindulva   játékokat  készítettünk  néhány  faj
  7.           együttélésére       (rókák-nyulak,       farkasok-bárányok).
  8.           Vizsgálataink  egy  általánosabb  érvényû  kérdésfeltevéshez
  9.           vezettek:  a  születés  és  halál  örök  versengésében mi az
  10.           egyensúly   feltétele,   azaz   az   élet   fennmaradásának,
  11.           fejlôdésének mi a biztosítéka, esélye.
  12.           
  13.           
  14.           A   továbbiakban   erre   a   kérdésre   keresünk   választ,
  15.           meglehetôsen  elvont,  de  éppen ezért általánosításra jogot
  16.           adó modellek segítségével.
  17.           
  18.           
  19.            @VAbsztrakt játszmák@N
  20.           
  21.           A  két  ""játékos"  (a születés és a pusztulás) -- egymástól
  22.           függetlenül  --  választhat  konform  (S+),  semleges  (S0),
  23.           illetve  kontra  (S-)  stratégiát.  Emlékeztetôül: ez annyit
  24.           tesz,  hogy  a  keletkezés  (elmúlás) mértékének változása a
  25.           népesság  számának  alakulásával  egyezô  elôjelû, független
  26.           tôle,  vagy  ellentétes tendenciájú. Az így létrejövô kilenc
  27.           lehetséges   alapváltozat  közül  vizsgálunk  meg  néhányat,
  28.           változatlanul Eigen professzor könyvét tekintve alapul.
  29.           
  30.           A  játéktér (""a világ"), ha lehet még tovább egyszerûsödik:
  31.           egy    @KNxN@N-es    táblán    @K(V(N,N))@N   megjelenô   @KX@N   és   @KO@N
  32.           betûk  jelölik  az  egyes  fajokat,  s  számuknak  az  egyes
  33.           esetekben   mûködô   szabályok  szerinti  alakulása  lesz  a
  34.           ""történelem".
  35.           
  36.           
  37.            @VS0/S0 játszma@N
  38.           
  39.           A  jelen  esetben  elemzendô stratégiák szerint a születések
  40.           és  halálozások  gyakorisága  állandó,  független az egyedek
  41.           számától.      Ezt     megvalósítja     (egyenlô,     0,5-es
  42.           valószínûséggel)  az  alábbi  algoritmus,  melyben felettébb
  43.           egyszerûen,    fej    vagy   írás   jelleggel   cserélgetjük
  44.           táblázatunkban az egyik betût a másikra.
  45.           
  46.           Szimu-lépés-S0-S0;
  47.               Ha RND<0.5 akkor
  48.                   Egy véletlen X cseréje O-ra
  49.               különben
  50.                   Egy Véletlen O cseréje X-re
  51.           Eljárás vége;
  52.           
  53.           Az  algoritmust  programmá  alakítva,  s  ha  sikerül el nem
  54.           aludnunk   a   kétségtelenül   monoton,   véget   nem    érô
  55.           betûcseréket  szemlélve,  egészen  érdekes   megfigyeléseket
  56.           tehetünk.
  57.           
  58.           Kezdetben  a  két  faj  népessége  a kiindulási adatok körül
  59.           ingadozik.  Kellôen  hosszú  futás  után  azonban, lassan de
  60.           biztosan  elkezd  vándorolni  (vagy  inkább  imbolyogni)  az
  61.           arány. Ha programunkat kiegészítjük egy olyan résszel,  mely
  62.           számlálja   az   egyes   eloszlások   gyakoriságát,    akkor
  63.           láthatjuk, hogy a kiindulási eloszlástól függetlenül  minden
  64.           értékpár közel azonos  mértékben fordul elô,  azaz egyenlôen
  65.           valószínûek. (Türelemre azért szükség lesz!)
  66.           
  67.           Teljes joggal  nevezhettük tehát  ezt a  játszmát múlt  havi
  68.           számunkban egy végállapot  nélküli, KÖZÖMBÖS játszmának.  Ha
  69.           az algoritmus, vagy  a futási eredmény  valakinek ismerôsnek
  70.           tûnik, az nem  véletlen: az úgynevezett  bolyongási probléma
  71.           egy speciális esetével állunk szemben.
  72.           
  73.           Az egydimenziós  változat Marx  György megfogalmazásában  az
  74.           alábbi: egy kikötôi móló közepén álló lámpaoszlopot  támogat
  75.           a  részeg  tengerész.   Ållapotából  következôen esetlegesen
  76.           lép hol jobbra, hol balra.   Kérdés, hogy N lépéssel  milyen
  77.           messzire  jut  a  lámpaoszloptól?  Vagy másképpen: balra tíz
  78.           lépésre a tenger, jobbra  tíz lépésre az enyhet  adó kocsma.
  79.           Mi lesz a végállomás?
  80.           
  81.           Kicsit  komolyabb  formában  is  felvethetô  a  kérdés   két
  82.           dimenzióban (esetleg  háromban). A  sík (tér)  egy pontjában
  83.           található  egy  gázmolekula-forrás,  mondjuk egy illatszeres
  84.           üveg. A belôle  kilépô molekulák véletlenszerûen  mozognak a
  85.           tér  minden  irányába.  Kérdés,  hogy  T  idô elteltével hol
  86.           érezhetô  az  illat?  De  érdemes  csak  egyetlen   molekula
  87.           pályáját  is  követni,  kirajzoltatni  -- így a Brown-mozgás
  88.           jelenségét tudjuk modellezni.
  89.           
  90.           
  91.                                @VS-/S+ játszma@N
  92.           
  93.           Olyan  modellt  kell  megvalósítanunk,  melyben  a  vizsgált
  94.           populáció  létszámának  növekedtével  csökken  a  szaporodás
  95.           esélye,  de  nô  a  halálozásé.  Ezt úgy fogjuk biztosítani,
  96.           hogy az  X és  O betûkkel  telített táblán  kisorsolt helyen
  97.           lévô  betût  az  ""ellenfélre"  cseréljük.  (Például X-ekkel
  98.           zsúfolt  táblán  nagyobb  eséllyel  választunk X-et, s ezzel
  99.           rögtön ki  is pusztítjuk,  mivel O-ra  cseréljük, miáltal  a
  100.           kisebb egyedszámú  fajt ""szaporítottuk"  is egyben).  Tehát
  101.           az algoritmus:
  102.           
  103.           Szimu-lépés-S-S+;
  104.               (I,J) := Véletlenhely(N,N);
  105.               Ha V(I,J) = "X" akkor
  106.                   V(I,J) := "O"
  107.               különben
  108.                   V(I,J) := "X"
  109.           Eljárás vége;
  110.           
  111.           Programunkat   többször,   különbözô    jellegû   --    akár
  112.           szélsôséges --  kezdeti eloszlásokkal  futtatva az  eredmény
  113.           mindig azonos.   Hoszabb-rövidebb idô  (a kezdés  jellegétôl
  114.           függôen) alatt  beáll egy  dinamikus egyensúly  (lásd az  1.
  115.           ábrát).
  116.           
  117.           @@<egys.pcx>
  118.           
  119.           Ettôl  kezdve  már  túl  nagy meglepetésre nem számíthatunk,
  120.           bármeddig is fut a programunk. (Érdemes végigszámolni,  hogy
  121.           mondjuk  egy  8x8-as  táblát  32-32  ""X"  és  ""O"  betûvel
  122.           indítva, mi a  valószínûsége a 64  ""X" megjelenésének!   Ez
  123.           az  érték  kisebb,  mint  10   a  -19-diken!)  Ha  most   is
  124.           elkészítjük  az  eloszlásokat  számláló  kiegészítést, akkor
  125.           láthatjuk,  hogy  a  gyakoriságok  a Gauss-féle haranggörbét
  126.           követik.   (A  2.  ábra  egy  száz  betûs  tábla  eloszlását
  127.           mutatja 100 ezer lépés után.)
  128.           
  129.           @@<gauss.pcx>
  130.           
  131.           Tehát a játszmának  van egy egyértelmû,  STABIL végállapota,
  132.           a  rendszer  EGYENSùLYba  kerül,  a  kiindulási   helyzettôl
  133.           függetlenül. Ezt  az algoritmust  is láttuk  már: sorozatunk
  134.           bevezetô részében ismertettük az Ehrenfest-féle  urnamodellt
  135.           (a  bolhás  kutyák  esete).
  136.           
  137.           
  138.                                @VS+/S- játszma@N
  139.           
  140.           Itt  a  születés  esélye  nô  az  elemszám gyarapodásával, a
  141.           halálozásé pedig csökken. E szabályok megvalósítása  hasonló
  142.           lesz  az  elôzôkben  leírtakhoz:  a  táblázatból  egy helyet
  143.           kisorsolva   az   ott   talált   betût   duplázzuk  meg  egy
  144.           tetszôleges helyen  található ""ellenség"  rovására. (Tessék
  145.           végiggondolni,   hogy   ez   a   szabály   eleget   tesz   a
  146.           feltételeknek!) Algoritmusban:
  147.           
  148.           Szimu-lépés-S+S-;
  149.               (I,J) := Véletlenhely(N,N);
  150.               Ha V(I,J) = "O" akkor
  151.                   Egy véletlen X cseréje O-ra
  152.               különben
  153.                   Egy Véletlen O cseréje X-re
  154.           Eljárás vége;
  155.           
  156.           Ez  a  program  nagyon  hamar  véget  ér.  Még  akkor is, ha
  157.           kezdôállapotként hajszálpontosan kiegyenlített állást  adunk
  158.           meg  (például  10x10-es  táblán  50--50  ""X"  és  ""O").  A
  159.           kezdetben kialakuló kis eltérések pillanatok alatt  óriásivá
  160.           válnak,  s  a  program  valamelyik  faj  kipusztulásával (és
  161.           értelemszerûen a másik egyeduralkodóvá válásával) véget  ér.
  162.           A  kezdeti   (beállított)  egyensúly   tehát  egy   INSTABIL
  163.           állapot, a játszma KATASZTRòFÅba torkollik (3. ábra).
  164.           
  165.           @@<kata.pcx>
  166.           
  167.           Hogy  melyik   faj  válik   ""áldozattá",  elôre   meg   nem
  168.           jósolható, a két végállapot egyenlôen valószínû. A  folyamat
  169.           megint nem ismeretlen, hiszen végeredményben  láncreakcióról
  170.           van  szó:  a  235-ös   tömegszámú  uránizotóp  egy   neutron
  171.           befogásával  két  közepes  súlyú  magra  hasad és 2-3 szabad
  172.           neutron keletkezik, melyek további uránmagokat hasítanak,  s
  173.           így tovább.
  174.           
  175.           
  176.                                @VS+/S+ játszma@N
  177.           
  178.           Itt  a  születés  és  a  halálozás  esélye  is nô a népesség
  179.           szaporodtával.  Ennek  modellezése  sem  nehéz:  a kisorsolt
  180.           mezôn lévô betût töröljük  le, majd másoljunk a  helyére egy
  181.           másik  véletlen  helyen  található  betût.  Ezzel a halál és
  182.           keletkezés konform voltát biztosítottuk. Tehát:
  183.           
  184.           Szimu-lépés-S+S+;
  185.               (I,J) := Véletlenhely (N,N);
  186.               Ciklus
  187.                   (K,L) := Véletlenhely(N,N);
  188.               amíg K<>I és J<>L
  189.               Ciklus vége
  190.               V(I,J) := V(K,L);
  191.           Eljárás vége;
  192.           
  193.           Itt  már  jelentôsége  van  a  kiindulási állapotnak, de még
  194.           inkább  a  születés  és  halál  valószínûsége bármilyen apró
  195.           változásának. (Érdemes kipróbálni!)  Az eredmény ezektôl  az
  196.           adatoktól  függôen  lehet  katasztrófa,  de  megvalósulhat a
  197.           fajok  közötti  ""béke"  is.  Ez  nem meglepô, hiszen eddigi
  198.           modelljeink (nyúl-róka,  farkas-bárány) hasonlóan  mûködtek,
  199.           s   láttuk,   ha   nem   ügyeltünk   az   adatok   ""helyes"
  200.           megválasztására,   programunk   bizony   hamar   véget   ért
  201.           valamelyik faj kihalása révén, míg ""belôtt"  paraméterekkel
  202.           az  idôk  végezetéig  vizsgálhattuk teremtményeinket. Joggal
  203.           nevezhetô tehát ez a játszma VÅLTOZò kimenetelûnek.
  204.           
  205.           Látható,  hogy  a  lehetséges  kilenc  játszmát   feltüntetô
  206.           (elôzô    számunkbeli)    táblázat    kimenetelei    valóban
  207.           elôállíthatók. (Legyen az Olvasó ""házi feladata" a  hiányzó
  208.           öt modell  végiggondolása, megalkotása  -- megmutatva,  hogy
  209.           valóban  csak  ez  a  négy  kimenet-típus  adódik.)  Érdemes
  210.           észrevenni,  hogy  a  szabályozó,  stabilitás  felé   mutató
  211.           hatások  --  kontra  (S-)  születés;  konform  (S+) halál --
  212.           közül  az  egyensúly  eléréséhez  elegendô  csak  az   egyik
  213.           jelenléte; közömbös stratégiával párosítva is biztosítják  a
  214.           populáció  állandóságát,  azaz  önmagukban  is szabályoznak.
  215.           Viszont  az  egyensúly  ellen  dolgozó  stratégiák  (konform
  216.           születés,  kontra  halálozás)  hatását  a  semleges  pár nem
  217.           képes ellensúlyozni, a folyamat katasztrófába torkollik.
  218.           
  219.           Ha végiggondoljuk az élôvilág  fôbb jellemzôit -- például  a
  220.           fantasztikus   fajgazdagságot,   a   viszonylagos    idôbeli
  221.           állandóságot, s egyben a fajok változását az evolúció  során
  222.           -- akkor láthatjuk, hogy csak az S+/S+ jellegû modell  lehet
  223.           megfelelô  ennek  leírásához.  Hiszen  az  S0/S0   semmiféle
  224.           állandóságot  nem  mutatott;  a  S-/S+  viszont  túl stabil,
  225.           nincs benne  változás; a  S+/S- szelekciója  csak egy fajtát
  226.           tûr  meg,  és  így  tovább.  A  modell finomításához, s jobb
  227.           megértéséhez   tisztáznunk    kell   a    növekedési    ütem
  228.           jelentôségét, hatását az egyensúlyra, a szelekcióra.
  229.           
  230.           
  231.                             @VNövekedési modellek@N
  232.           
  233.           Mindössze  három  esetet   fogunk  tanulmányozni.  Az   elsô
  234.           esetben  a   növekedési  ráta   (az  egységnyi   idô  alatti
  235.           szaporodás mértéke) állandó, azaz
  236.           
  237.               @KdN/dt = k@N
  238.           
  239.           E differenciálegyenlet megoldása:
  240.           
  241.               @KN(t) = k*t@N
  242.           
  243.           egyszerû   lineáris   függvény,   amely   szép   egyenletes,
  244.           kiegyensúlyozott  szaporodást  takar.  Ezért  nevezik  ezt a
  245.           fajta   növekedést   lineárisnak.   A   második   eset   már
  246.           bonyolultabb,  itt  a  növekedés   üteme  függ  az   egyedek
  247.           számától, azzal egyenesen arányos. Egyenletben:
  248.           
  249.               @KdN/dt = k*N(t)@N
  250.           
  251.           A differenciálegyenlet megoldása:
  252.           
  253.               @KN(t) = N(0)*exp(k*t)@N
  254.           
  255.           Tehát a népesség létszáma exponenciális ütemben  gyarapodik.
  256.           Ez  az   exponenciális  modell   érvényesül  általában    az
  257.           élôvilágban, melynek oka  az önreprodukció (a  genetikai kód
  258.           csak  mintáról  másolható).  Ekkor  a népesség ""duplázodási
  259.           ideje"  állandó.  De  az  elôzô  számunkban közölt grafikon,
  260.           mely  az   emberiség  számának   alakulását  mutatta,    egy
  261.           másfajta, gyorsabb növekedési ütemet ábrázolt: az  emberiség
  262.           létszáma  egyre  csökkenô  idôk  alatt  kétszerezôdik.  (Itt
  263.           lépnek  be  a  társadalmi  tényezôk:  egészségügyi  ellátás,
  264.           életmód, stb.)  Ez lesz  a harmadik  eset: matematikailag  a
  265.           növekedés sebessége a  meglevô egyedek számának  négyzetével
  266.           arányos, tehát
  267.           
  268.               @KdN/dt = k*N*N@N
  269.           
  270.           mely differenciálegyenlet megoldása:
  271.           
  272.               @KN(t) = N(0) / (1 - N(0)*k*t)@N
  273.           
  274.           Ez a hiperbolikus növekedési  modell. A három modell  hatása
  275.           jól  összehasonlítható  a  mellékelt  grafikonon  (4.  ábra:
  276.           @Kk@N értéke rendre 1, 0,2, illetve 0,01).
  277.           
  278.           @@<novgraf.pcx>
  279.           
  280.           Természetesen ez így csak korlátlan növekedést  feltételezve
  281.           lenne  igaz,   de  sem   világunk,  sem   számítógépünk  nem
  282.           korlátlan.  Számunkra  sokkal  érdekesebbek  a   korlátozott
  283.           növekedési  modellek,  itt  figyelhetô  meg  a  versengés, a
  284.           szelekció. Ezek tanulmányozását szolgálja a következô  játék
  285.           (Marx professzor könyve alapján).
  286.           
  287.           
  288.                                  @VStratégia@N
  289.           
  290.           Játékterünk   újfent   egy   @KNxN@N-es   sakktábla. Két játékos
  291.           felváltva rakosgatja a táblára saját színû (jelû)  gombjait,
  292.           az éppen  kisorsolt mezôre.  A játékosok  három stratégiából
  293.           választhatnak  minden  lépésben,  mely  választást  a   mezô
  294.           sorsolása elôtt kell megejteniök. A lehetséges stratégiák:
  295.           
  296.           1. ïsnemzés: ha a  sorsolt mezô üres, arra  elhelyezhetô egy
  297.           saját gomb (betû).
  298.           
  299.           2.  Osztódás:  ha  a  véletlen  mezô  nyolc szomszédja közül
  300.           valamelyiken már van egy  saját gomb, akkor letehetô  ide is
  301.           egy. Ha a mezôn ""ellenfél" lakik, akkor az elpusztul,  azaz
  302.           lecserélendô.
  303.           
  304.           3.  Közremûködés:   a  kidobott   négyzetre  és   annak  egy
  305.           szomszédjára tehet  gombot a  játékos, ha  a nyolc  szomszéd
  306.           közül  legalább  kettôn  már  a  saját  gombjai  vannak.  Az
  307.           ellenfél megint nem akadály!
  308.           
  309.           Jól  felismerhetô  a  játék  három  stratégiája és a fentebb
  310.           vázolt  három  növekedési  modell  közti rokonság. A játékot
  311.           természetesen legjobb a géppel játszatni, lehetôség  szerint
  312.           az egyes  fajok alakulását  grafikonon is  követve. Kiválóan
  313.           megfigyelhetô     a      stratégiaváltáskor      bekövetkezô
  314.           ""görbeváltás".  Megállapíthatjuk,  hogy  a  tér korlátozott
  315.           volta   miatt    bekövetkezô   telítôdés    az    összetevôk
  316.           vonatkozásában  változó  képet  mutat  az  egyes  stratégiák
  317.           esetében.
  318.           
  319.           Lineáris   növekedés   mellett    együttélés   jön    létre,
  320.           kölcsönösen   stabilizálhatják   egymást   a    komponensek.
  321.           Exponenciális   stratégiákat   választva   megfigyelhetô   a
  322.           verseny   megjelenése,   megindul    a   kiválasztódás.    A
  323.           hiperbolikus eset egyfajta  ""minden vagy semmi"  eredményre
  324.           vezet. S  itt van  a döntô  különbség a  két gyors növekedés
  325.           között:  a  hiperbolikus  modell  végleges  szelekciót   hoz
  326.           létre, míg  az exponenciális  megtûri a  különbözô variánsok
  327.           együttélését,  azzal  a  megszorítással,  hogy  a szelekciós
  328.           elôny (a természetben tapasztalhatóhoz hasonlóan) nem  lehet
  329.           túl  nagy.  îgy  tud  létrejönni  a  világban  tapasztalható
  330.           fajgazdagság,     miközban     kiválasztódtak     az    arra
  331.           legalkalmasabbak.  (Folytatjuk.)
  332.           
  333.           @KBánhegyesi Zoltán@N
  334.